package cn.semcorp.zhuhaizj.repo;

import cn.semcorp.zhuhaizj.pojo.dto.FlowerUserDTO;
import cn.semcorp.zhuhaizj.pojo.vo.SchemaVO;
import cn.semcorp.zhuhaizj.pojo.vo.WorkshopVO;

import java.util.List;


/**
 * 处理人员架构缓存的数据访问接口
 */
public interface IRedisRepository {
    /**
     * 数据项在Redis中的Key前缀
     */
    String OPERATOR_ITEM_KEY = "operator_item_list";
    String MAIN_ITEM_KEY = "main_item_list";
    String MONITOR_ITEM_KEY = "monitor_item_list";
    String FLOWERS_ITEM_KEY = "flower_item_list";
    String MATERIAL_ITEM_KEY = "material_item_list";
    String STUDY_ITEM_KEY = "study_item_list";
    String COATING_WORKSHOP_ITEM_KEY = "coating_workshop_item_list";
    /**
     * 在Redis中的Key
     */
    String SCHEMA_LIST_KEY = "schema_list";
    String INFORMATION_ITEM_KEY = "information_item";

    /**
     * 向Redis中写入人员架构
     *
     * @param SchemaVO 品牌数据
     */
    void save(SchemaVO SchemaVO);
    List<FlowerUserDTO> getFlowersList();
    String getCountPeopleInformation();
    List<String> getMaterialWorkshopList();
    SchemaVO get();

    void deleteSchema();
    void deleteFlower();
    void deleteFlowerList();
    void deleteCoatingWorkshop();
    void deleteCountStudy();
    void saveFlowersOperator(List<String> list);
    void saveFlowersMain(List<String> list);
    void saveFlowersMonitor(List<String> list);
    void saveFlowersList(List<FlowerUserDTO> list);
    void saveCountPeopleInformation(String str);
    void saveMaterialWorkshopList(List<String> list);
    void saveCoatingWorkshop(List<WorkshopVO> list);
    void saveCountStudy(List<String> list);


    List<String> getFlowers(String postClass);
    List<WorkshopVO> getCoatingWorkshop();
    List<String> getCountStudy();
}
